package NC100_把字符串转换成整数;

import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定，请勿修改，直接返回方法规定的值即可
     *
     *
     * @param s string字符串
     * @return int整型
     */
    public int StrToInt (String s) {
        // write code here
        long ans = 0;
        int flag = 0;
        for (int i = 0; i < s.length(); i++){
            // 去空格
            if (s.charAt(i) == '+' || s.charAt(i) == ' '){
                continue;
            }
            // 记录小于0
            if (s.charAt(i) == '-'){
                flag = 1;
                continue;
            }
            // 有不合法数字直接结束
            if (s.charAt(i) > '9' || s.charAt(i) < '0'){
                break;
            }

            ans = ans * 10 + (s.charAt(i) - '0');

            // 判断是否溢出
            if (ans > Integer.MAX_VALUE){
                return flag == 0 ? Integer.MAX_VALUE : Integer.MIN_VALUE;
            }
        }
        if (flag == 1){
            ans = -ans;
        }
        return (int)ans;
    }
}